home *** CD-ROM | disk | FTP | other *** search
-
- TOS TRACE TOOL - A shareware TOS system call trace program
- by Leo de Wit
-
-
- TOS TRACE TOOL is a tool intended for ST hackers/programmers
- to be able to trace (some of) the ST system calls. It catches
- the GEM/GEMDOS/BIOS/XBIOS/LineA exceptions to do so (only GEMDOS
- and the traps that are/have been traced, are intercepted). Of
- course you can use a debugger to do the same, but I doubt it is
- as easy to use.
-
- The trace output is presented on a separate screen, to which
- you can switch back and forth using the Control-Enter key. This
- output consists of the function called, with its arguments
- displayed in hex. Some arguments, like the pathname in GEMDOS
- Fopen(), is displayed as an ASCII string. The VDI functions are
- 'translated to C-usage', that is: VDI (and AES) is presented as
- if the functions were system calls (though they really are
- library function bindings to a lower level interface).
- Output variables are marked accordingly (==>), but their
- value is not given; some functions can take indefinitely to
- finish (e.g. Pexec()), and it would also require to trap the
- calls on exit as well (they're now trapped on entrance only).
- (If this is a must, or alternatively the function's return
- value is needed, I will look into that).
- The trace screen is not scrolled, but wrapped to the top;
- this is less tiresome for the eyes to follow. The last function
- that was traced is the one above the empty line(s).
-
- So far all is being handled by the TOSTRACE.PRG TSR
- program. The en-/disabling of specific functions is performed
- by the SETTRACE.PRG program. It is possible to install
- TOSTRACE.PRG by hand (or in your \AUTO folder), but SETTRACE.PRG
- will install it if it isn't already present. One drawback:
- SETTRACE.PRG currently looks only in the current directory for
- a copy of TOSTRACE.PRG.
- You can select one of the 'system call classes', as
- represented in the middle upper block of the SETTRACE form;
- the functions belonging to that class will be displayed with
- their current trace status (tracing is marked with a 'check'
- symbol). VDI has been split in two; there are so many of those.
- Clicking on them toggles the trace status; note it is
- only really set/reset when you switch to a different class or
- exit, and you confirm the 'save' question. Clicking on Set
- resp. Clear sets resp. clears all trace settings of the current
- system call class.
-
- A lot of functions have been tested (traced), but there
- will probably remain a lot of untested ones (or tested under
- different conditions). I'm always willing to implement
- reasonable suggestions for improvement, if I can find the
- time, and feel like it (hey, this is a hobby :-).
-
- Enjoy!
-
- Leo.
-
-